This repository was archived by the owner on Feb 25, 2025. It is now read-only.
[ios]enable the webview non tappable workaround by checking subviews recursively#57168
Merged
auto-submit[bot] merged 1 commit intoflutter:mainfrom Dec 13, 2024
Conversation
jmagman
reviewed
Dec 12, 2024
Comment on lines
597
to
598
| [self removeGestureRecognizer:self.delayingRecognizer]; | ||
| [self addGestureRecognizer:self.delayingRecognizer]; |
Member
There was a problem hiding this comment.
Will this cause problems in the views they are gesturing into that are not WKWebViews?
Contributor
Author
There was a problem hiding this comment.
I think it is possible. That's something that we need to watch out for. But I highly doubt if it is gonna cause real issues
Contributor
Author
There was a problem hiding this comment.
We are talking about an odd of combining:
- having a setup with webview + another non-web-view subview that also handles gesture
- having a flutter overlay layer on top of this non-web-view subview
- User touch the area inside non-web-view subview, but outside of the overlay layer
Then we will have this non-web-view subview receive the extra touch when it's not supposed to.
Then even when this happens, I don't think it is a huge problem.
Contributor
Author
|
I was able to verify this solution works in the sample project provided by the author of |
8 tasks
engine-flutter-autoroll
added a commit
to engine-flutter-autoroll/flutter
that referenced
this pull request
Dec 13, 2024
…ubviews recursively (flutter/engine#57168)
github-merge-queue bot
pushed a commit
to flutter/flutter
that referenced
this pull request
Dec 13, 2024
flutter/engine@9b51e30...5eedfef 2024-12-13 flar@google.com Normalize round rect bounds when coming from Flutter (flutter/engine#57171) 2024-12-13 41930132+hellohuanlin@users.noreply.github.com [ios]enable the webview non tappable workaround by checking subviews recursively (flutter/engine#57168) 2024-12-12 30870216+gaaclarke@users.noreply.github.com removed c style casts and enabled the lint (flutter/engine#57162) 2024-12-12 jonahwilliams@google.com [Impeller] exploit perfect hash for SamplerDescriptor. (flutter/engine#57036) 2024-12-12 30870216+gaaclarke@users.noreply.github.com Reenabled labelling test with a capabilities check. (flutter/engine#57160) 2024-12-12 jonahwilliams@google.com [Impeller] dont print format strings for blend filter and snapshots. (flutter/engine#57105) 2024-12-12 robert.ancell@canonical.com Make fl_engine_send_key_event into a standard async function. (flutter/engine#57112) 2024-12-12 skia-flutter-autoroll@skia.org Roll Fuchsia Linux SDK from HJ57Y3zxqDamI8qkY... to iWMEbVYaNdH8RJmXZ... (flutter/engine#57163) 2024-12-12 robert.ancell@canonical.com Migrate FlPlatformChannel tests to FlMockBinaryMessenger (flutter/engine#57140) 2024-12-12 robert.ancell@canonical.com Migrate FlBasicMessageChannel tests to FlMockBinaryMessenger (flutter/engine#57115) 2024-12-12 flar@google.com Migrate layers and layer_tree to DisplayList/Impeller geometry classes (flutter/engine#57153) 2024-12-12 mdebbar@google.com [web] Use CanvasKit to run tests under engine/ (flutter/engine#54786) Also rolling transitive DEPS: fuchsia/sdk/core/linux-amd64 from HJ57Y3zxqDam to iWMEbVYaNdH8 If this roll has caused a breakage, revert this CL and stop the roller using the controls here: https://autoroll.skia.org/r/flutter-engine-flutter-autoroll Please CC jonahwilliams@google.com,zra@google.com on the revert to ensure that a human is aware of the problem. To file a bug in Flutter: https://github.com/flutter/flutter/issues/new/choose To report a problem with the AutoRoller itself, please file a bug: https://issues.skia.org/issues/new?component=1389291&template=1850622 Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
8 tasks
auto-submit bot
pushed a commit
that referenced
this pull request
Dec 13, 2024
This PR limits the search depth, because we don't want to enable this workaround for AdMob banner, which has a WKWebView in the depth of 7. See the previous PR for more context: #57168 I was able to confirm that this returns YES for the 3P plugin, and NO for AdMob. *List which issues are fixed by this PR. You must list at least one issue.* flutter/flutter#158961 *If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].* [C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
auto-submit bot
pushed a commit
that referenced
this pull request
Dec 13, 2024
… subviews recursively #57168 (#57172) CP for #57168 and #57193 *List which issues are fixed by this PR. You must list at least one issue.* flutter/flutter#158961 *If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].* [C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
auto-submit bot
pushed a commit
that referenced
this pull request
Dec 17, 2024
… AND "enable the webview non tappable workaround by checking subviews recursively #57168" (#57176) CP for 3 PRs: #56804 and #57168 and #57193 This is for 3.28. Since the previous PR was not merged, so I combined the 2 PRs to make it easier to merge. *List which issues are fixed by this PR. You must list at least one issue.* pichillilorenzo/flutter_inappwebview#2415 *If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].* [C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
nick9822
pushed a commit
to nick9822/flutter
that referenced
this pull request
Dec 18, 2024
…recursively (flutter/engine#57168) The original workaround ([PR](flutter/engine#56804)) works for the official web view plugin, but it doesn't work for a third party plugin `flutter_inappwebview` ([issue](https://github.com/pichillilorenzo/flutter_inappwebview)). Upon discussion with the author of that plugin, it turns out that their platform view is not a WKWebView, but rather a wrapper of WKWebView. This PR performs a DFS search of the view hierarchy, and enable the workaround as long as there's a WKWebView inside. TODO: pending sample project: I am quite positive that it should work, but **I haven't tried it since I don't have a sample project yet**. I have requested a sample project with them so I can verify the solution. *List which issues are fixed by this PR. You must list at least one issue.* pichillilorenzo/flutter_inappwebview#2415 *If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].* [C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
nick9822
pushed a commit
to nick9822/flutter
that referenced
this pull request
Dec 18, 2024
…er/engine#57193) This PR limits the search depth, because we don't want to enable this workaround for AdMob banner, which has a WKWebView in the depth of 7. See the previous PR for more context: flutter/engine#57168 I was able to confirm that this returns YES for the 3P plugin, and NO for AdMob. *List which issues are fixed by this PR. You must list at least one issue.* flutter#158961 *If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].* [C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
phamnhuvu-dev
pushed a commit
to phamnhuvu-dev/engine
that referenced
this pull request
Jan 7, 2025
… subviews recursively flutter#57168 (flutter#57172) CP for flutter#57168 and flutter#57193 *List which issues are fixed by this PR. You must list at least one issue.* flutter/flutter#158961 *If you had to change anything in the [flutter/tests] repo, include a link to the migration guide as per the [breaking change policy].* [C++, Objective-C, Java style guides]: https://github.com/flutter/engine/blob/main/CONTRIBUTING.md#style
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The original workaround (PR) works for the official web view plugin, but it doesn't work for a third party plugin
flutter_inappwebview(issue). Upon discussion with the author of that plugin, it turns out that their platform view is not a WKWebView, but rather a wrapper of WKWebView.This PR performs a DFS search of the view hierarchy, and enable the workaround as long as there's a WKWebView inside.
TODO: pending sample project:
I am quite positive that it should work, but I haven't tried it since I don't have a sample project yet. I have requested a sample project with them so I can verify the solution.
List which issues are fixed by this PR. You must list at least one issue.
pichillilorenzo/flutter_inappwebview#2415
If you had to change anything in the flutter/tests repo, include a link to the migration guide as per the breaking change policy.
Pre-launch Checklist
///).If you need help, consider asking for advice on the #hackers-new channel on Discord.